layui.define([ 'form', 'laydate', 'table' ], function(exports) {
    var form = layui.form;
    var laydate = layui.laydate;
    var table = layui.table;
    var tDEnrolledDataTable = null;
    var view ={
        init:function(){
            this.initTable();
            this.initSearchForm();
            this.initToolBar();
            window.dataReload = function(){
                Lib.doSearchForm($("#searchForm"),tDEnrolledDataTable)
            }
        },
        initTable:function(){
            var data = $("#searchForm").serializeJson();
            tDEnrolledDataTable = table.render({
                elem : '#tDEnrolledDataTable',
                height : Lib.getTableHeight(0),
                cellMinWidth: 100,
                method : 'post',
                where: data,
                url : Common.ctxPath + '/tDEnrolledData/tDEnrolledData/list.json' // 数据接口
                // ,page : Lib.tablePage // 开启分页
                ,page: true
                ,limit : 10,
                cols : [ [ // 表头
                    {
                        type : 'checkbox',
                        fixed:'left',
                    },
                {

                    field : 'id',
                        title : 'id',
                    fixed:'left',
                        width : 120,
                },
                {
                    field : 'checker',
                    title : '校验人',
                    width : 120,
                } ,
                {

                    field : 'batchName',
                        title : '批次',
                    width : 150,
                },

                {

                    field : 'umId',
                        title : 'umId',
                    width : 140,
                },
                {

                    field : 'univId',
                    title : 'univId',
                    width : 120,
                },
                {

                    field : 'univCode',
                        title : 'univCode',
                    edit : 'text',
                    width : 130,
                },

                {

                    field : 'univName',
                        title : '大学名称',
                    edit : 'text',
                    width : 300,
                },
                {

                    field : 'enrolled',
                        title : '录取',
                    edit : 'text',
                    width : 90,
                },
                {

                    field : 'averageScore',
                    title : '平均分',
                    edit : 'text',
                    width : 90,
                },
                {
                    field : 'lowScore',
                        title : '最低分',
                    edit : 'text',
                    width : 90,
                },
                {
                    field : '',
                    title : '操作',
                    width : 90,
                    align:'center',
                    templet:function (d) {
                        return '<a class="layui-btn  layui-btn-xs layui-btn-danger" lay-event="check">校验</a>';
                    }
                }

        ] ]

        });
            table.on('sort(tDEnrolledDataTable)', function(obj){ //注：tool是工具条事件名，test是table原始容器的属性 lay-filter="对应的值"
                console.log(obj.field); //当前排序的字段名
                console.log(obj.type); //当前排序类型：desc（降序）、asc（升序）、null（空对象，默认排序）
                console.log(this); //当前排序的 th 对象

                //尽管我们的 table 自带排序功能，但并没有请求服务端。
                //有些时候，你可能需要根据当前排序的字段，重新向服务端发送请求，从而实现服务端排序，如：
                table.reload('tDEnrolledDataTable', {
                    initSort: obj //记录初始排序，如果不设的话，将无法标记表头的排序状态。 layui 2.1.1 新增参数
                    ,where: { //请求参数（注意：这里面的参数可任意定义，并非下面固定的格式）
                        field: obj.field //排序字段
                        ,order: obj.type //排序方式
                    }
                });
            });
            table.on('checkbox(tDEnrolledDataTable)', function(obj){
                var tDEnrolledData = obj.data;
                if(obj.checked){
                    //按钮逻辑Lib.buttonEnable()
                }else{

                }
            })

            table.on('edit(tDEnrolledDataTable)', function(obj){
                console.log(obj.value); //得到修改后的值
                console.log(obj.field); //当前编辑的字段名
                console.log(obj.data); //所在行的所有相关数据

                // if(obj.value||obj.field=="enrolled"||obj.field=="lowScore"||obj.field=="averageScore"||obj.field=="highScore"){
                    var param = {id:obj.data.id,provinceId:obj.data.provinceId};
                    param[obj.field]=obj.value;
                    if(obj.field=="enrolled"||obj.field=="lowScore"||obj.field=="averageScore"||obj.field=="highScore"){
                        var type = 1;
                        if(obj.field=="enrolled"){
                            type = 1;
                        }else if(obj.field=="lowScore"){
                            type = 2;
                        }else if(obj.field=="averageScore"){
                            type = 3;
                        }else if(obj.field=="highScore"){
                            type = 4;
                        }
                        param.type=type;
                        $.ajax({
                            url:Common.ctxPath+"/tDEnrolledData/tDEnrolledData/updateEnrolledData.json",
                            type:"POST",
                            data:param,
                            success:function(res){
                                if(res.code==0){
                                    Common.info("操作成功");
                                    // window.dataReload();
                                }else{
                                    Common.info("操作失败");
                                }
                            }
                        });
                    }else{
                        $.ajax({
                            url:Common.ctxPath+"/tDEnrolledData/tDEnrolledData/update.json",
                            type:"POST",
                            data:param,
                            success:function(res){
                                if(res.code==0){
                                    Common.info("操作成功");
                                    // window.dataReload();
                                }else{
                                    Common.info("操作失败");
                                }
                            }
                        });
                    }

                // }
            })

            table.on('tool(tDEnrolledDataTable)', function(obj){
                var planItem = obj.data;
                console.dir(planItem)
                if(obj.event=="check"){
                    $.ajax({
                        url:Common.ctxPath+"/tDEnrolledData/tDEnrolledData/check.json",
                        type:"POST",
                        data:{
                            id:planItem.id,
                            provinceId:planItem.provinceId
                        },
                        success:function(res){
                            if(res.code==0){
                                window.dataReload();
                                Common.info("操作成功");
                            }else{
                                Common.info("操作失败");
                                Lib.closeFrame();
                            }
                        }
                    });
                }
            })
        },

        initSearchForm:function(){
            Lib.initSearchForm( $("#searchForm"),tDEnrolledDataTable,form);
        },
        initToolBar:function(){
            toolbar = {
                add : function() { // 获取选中数据
                    var data = $("#searchForm").serializeJson();
                    if(data.year==""||data.provinceId==""||data.majorTypeId==""||data.batchId==""){
                        Common.info("省份、年份、文理科、批次必选");
                        return ;
                    }
                    var url = "/tDEnrolledData/tDEnrolledData/add.do?year="+data.year+"&provinceId="+data.provinceId+"&majorTypeId="+data.majorTypeId+"&batchId="+data.batchId;
                    Common.openDlg(url,"录取数据管理>新增");
                },
                edit : function() { // 获取选中数目
                    var data = Common.getOneFromTable(table,"tDEnrolledDataTable");
                    if(data==null){
                        return ;
                    }
                    var url = "/tDEnrolledData/tDEnrolledData/edit.do?id="+data.id+"&provinceId="+data.provinceId;
                    Common.openDlg(url,"录取数据管理>"+data.id+">编辑");
                },
                major : function() { // 获取选中数目
                    var data = Common.getOneFromTable(table,"tDEnrolledDataTable");
                    if(data==null){
                        return ;
                    }
                    window.parent.addTab1(data.univName+"专业列表",
                        "./tDEnrolledData/tDEnrolledData/majorIndex.do?id="+data.id+"&provinceId="+data.provinceId,"resMajor"+data.id);
                },
                del : function() {
                    layui.use(['del'], function(){
                        var delView = layui.del;
                        delView.delBatch();
                    });
                }
        };
            $('.ext-toolbar').on('click', function() {
                var type = $(this).data('type');
                toolbar[type] ? toolbar[type].call(this) : '';
            });
        }





    }

    form.on('select(year)', function(data){
        setBatch();
    });
    form.on('select(majorTypeId)', function(data){
        setBatch();
    });

    form.on('select(provinceId)', function(data){
        setBatch();
    });

    function setBatch() {
        var year = $('#year option:selected').val();
        var majorTypeId = $('#majorTypeId option:selected').val();
        var provinceId = $('#provinceId').val();
        if(year!=""&&majorTypeId!=""&&provinceId!=""){
            $.ajax({
                type: 'POST',
                url: Common.ctxPath+"/tDEnrolledData/tDEnrolledData/getBatch.json",
                data: {
                    provinceId:provinceId,
                    year:year,
                    majorTypeId:majorTypeId
                },
                dataType:'json',
                success: function(data){
                    $("#batchId").html("");
                    $.each(data, function(key, val) {
                        var option1 = $("<option>").val(val.batchId).text(val.name);
                        $("#batchId").append(option1);
                    });
                    form.render('select');
                }
            });
        }

    }

    exports('index',view);

});
